
//---------------------------------------------------------------------------
#ifndef PG2_VERTEXTYPES_H
#define PG2_VERTEXTYPES_H
//---------------------------------------------------------------------------
#include "Defines.h"
//---------------------------------------------------------------------------
namespace ns
{
//---------------------------------------------------------------------------
// build an unsigned int from color (see D3DCOLOR_XRGB)

#define PG2_COLOR_ARGB(a,r,g,b) ((DWORD)((((a)&0xff)<<24)|(((r)&0xff)<<16)|(((g)&0xff)<<8)|((b)&0xff)))
#define PG2_COLOR_RGB(r,g,b) PG2_COLOR_ARGB(0xff,r,g,b)
//---------------------------------------------------------------------------
struct ENGINE_API ColorVertex
{
	float x;
	float y;
	float z;

	DWORD color;
};
struct ENGINE_API TextureVertex
{
	float x;
	float y;
	float z;
	float u;
	float v;
	DWORD color;
};

struct ENGINE_API Vertex{
	float x,y,z;
};
//---------------------------------------------------------------------------
enum Primitive
{
	TriangleList = 0,
	TriangleStrip,
	PointList,
    LineList,
    LineStrip,
	TriangleFan,
	PrimitiveCount
};


//---------------------------------------------------------------------------
} // end namespace
//---------------------------------------------------------------------------
#endif // PG2_VERTEXTYPES_H
//---------------------------------------------------------------------------
